CoopNet (Cooperative Networking), a system for off-loading serving to peers who have recently downloaded content, is described in the paper “The Case for Cooperative Networking”, presented at the First International Workshop on Peer-to-Peer Systems (IPTPS) in 2002. The system was proposed by computer scientists Venkata N. Padmanabhan and Kunwadee Sripanidkulchai, working at Microsoft Research and Carnegie Mellon University.
Basically when a server experiences an increase in load it redirects incoming peers to other peers who have agreed to mirror the content, thus off-loading balance from the server. All of the information is retained at the server. This system makes use of the fact that the bottle-neck is most likely in the outgoing bandwidth than the CPU, hence its server-centric design. It assigns peers to other peers who are 'close in IP' to its neighbors [same prefix range] in an attempt to use locality. If multiple peers are found with the same file it designates that the node choose the fastest of its neighbors.
Streaming media is transmitted by having clients cache the previous stream, and then transmit it piece-wise to new nodes.